// Copyright (c) 2006 Zorm
// Released under the MIT License

#ifndef RADARINFORMATION_H
#define RADARINFORMATION_H
#pragma once

struct PointLatLonR;
typedef std::vector<PointLatLonR *>::iterator VectorPointIter;

class RadarInformation {

public:
	RadarInformation(std::string filename) { m_scale = 1; m_centerx = 0.0; m_centery = 0.0; m_panx = 0; m_pany = 0;}
	void SetLatitude(double newLatitude) { m_latitude = newLatitude;}//int((newLatitude - newLatitude) * 100000000.0); }
	void SetLongitude(double newLongitude) { m_longitude = newLongitude;}//int((newLongitude - newLongitude) * 100000000.0); }
	int GetLatitude() { return m_latitude; }
	int GetLongitude() { return m_longitude; }
	void SetCenterX(double newX) { m_centerx = newX; }
	void SetCenterY(double newY) { m_centery = newY; }
	double GetCenterX() { return m_centerx; }
	double GetCenterY() { return m_centery; }
	void SetPanX(double newX) { m_panx = newX; }
	void SetPanY(double newY) { m_pany = -newY; }
	std::vector<PointLatLonR *> *GetRadarData() { return &radarData; }
	
	void Draw();
	void IncreaseScale(short delta);
	void DecreaseScale(short delta);
	
private:
	void SetColor(unsigned char level);

	int m_latitude, m_longitude;
	double m_centerx, m_centery;
	double m_panx, m_pany;
	double m_scale;
	std::vector<PointLatLonR *> radarData;

};

#endif